// 进行axios二次封装，使用请求与响应拦截器
import axios from 'axios'
// import { ElMessage } from 'element-plus'
// import useUserStore from '@/store/modules/user'

const request = axios.create({
    // 使用环境变量，配置基础路径
    baseURL: import.meta.env.VITE_APP_BASE_API,
    // timeout: 3000, 
});

request.interceptors.request.use(function (config) {
    // let userStore = useUserStore()
    // if(userStore.token){
    //     config.headers.token = userStore.token
    // }
    return config;
})

request.interceptors.response.use(function (response) {
    return response;
}, function (error) {
    // 储存网络错误信息
    let message = ''
    // http状态码
    let staute = error.response.status
    switch (staute) {
        case 401:
            message = 'TOKEN过期'
            break;
        case 403:
            message = '无权访问'
            break;
        case 404:
            message = '请求地址错误'
            break;
        case 500:
            message = '服务器崩溃'
            break;
        default:
            message = '其他错误'
    }
    // ElMessage({
    //     message: `${message}`,
    //     type: 'warning',
    // })
    return Promise.reject(error)
});

export default request